package com.hllxd.hism.star.basic.service.model.order;

import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 商城订单
 * tbl_hllxd_3th_order_master
 * @author liuxiongbo
 * @date 2020/12/18 10:45
 */
@Data
public class MallOrderMasterEntity {

    public Long mallOrderMasterID; // 订单ID 主键
    public String subBillID; // 商城订单Id
    public String subBillNo; // 商城订单号
    public String mallCode = "22CITY";// 商城编码，来源：22CITY, TAOBAO, HLLXD
    public Long acceptTime; // 接单时间

    public Long subBillCreateTime; // 订单创建时间
    public Integer subBillStatus; // 订单状态,1-待接单,2-待发货,3-已收货,4-待结算，5-已结算， 6-已完成，7-已取消 8-拒收
    public String subBillRemark; // 订单备注
    public BigDecimal totalAmount; // 订单总金额
    public Integer invoiceStatus; // 开发票状态 0未开 1申请中 2已开

    // 支付信息
    public Integer payType; // 支付类型 1-货到付款 2- 账期支付 3-线上支付
    public Integer paymentWay; // 付款方式：1-微信付款、2-支付宝付款、3-银联支付、4-现金、5-支票、6-快捷支付、7-余额支付 、8-微信扫码、9-支付宝扫码 10-微信公众号 11-优惠券支付 12-卡支付
    public String payOrderNo; // 支付单号(支付流水号)
    public BigDecimal amountPaid; // 实际支付金额（已支付金额）

    // 配送信息
    public String purchaserName; // 采购商名称
    public String receiverAddress; // 收货地址
    public String receiverMobile; //收货手机号
    public String receiverName; // 收货人名

    // 基础信息
    public Integer createType; // 创建方式： 0-自动, 1-手动
    public Integer isTest; // 是否为测试数据

    public Integer action; // 记录状态
    public Long actionTime; // 记录修改时间
    public Long createTime; // 记录创建时间


    // 操作后的信息
    public Integer convertStatus; // 转换状态：0-未转换、1-转换完成、2-转换失败
    public Long convertTime; // 转换时间
    public String failMessage; // 转换失败消息，只有convertStatus为2时才有
    public Long transOrderID; // 转换对应跳房子订单ID

    // 运行时Ex扩展信息
    /**
     * ===============================================================================
     * 列表查询条件字段
     * ===============================================================================
     * 这里的字段是我们这边不用存的，但是可能在查询条件中需要用到的，具体参考接口文档：
     * <a href="http://rap.hualala.com/workspace/myWorkspace.do?projectId=283#2475">订单查询</a>
     */
    public Integer billSource;
    public Integer deliverType;
    public Integer flag;
    public Long groupID;
    public String purchaseBillNo;
    public String searchWords;
    public Integer settlementStatus;
    public Long shipperID;
    public String shipperName;
    public String shipperType;
    public Long shopID;
    public Long subBillCreateTimeEnd;
    public Long subBillCreateTimeStart;
    public Long subBillDateEnd;
    public Long subBillDateStart;
    public Long subBillExecuteDateEnd;
    public Long subBillExecuteDateStart;
    public Long subBillSignTimeEnd;
    public Long subBillSignTimeStart;
    public Integer subBillType;
    public Integer subbillCategory;

    /**
     * 分页信息
     */
    public Integer pageSize;
    public Integer pageNum;
    public Long totalSize;


    public List<Integer> convertStatusList;
    public String licenseListStr; // 用于生成跳房子后生成注册码
    public List<Integer> subBillStatusList;
    public List<Long> subBillIDList;
    public List<MallOrderProductDetailEntity> billDetailList; // 商品详情
    public String productDetail; // 产品详情

//    public Long mallOrderDetailID;
//    public String productCode;
//    public String productName;
//    public Long productNum;
}
